Radio frequency identification devices (RFIDs) are known in the art. Such devices are typically used for inventory tracking. As large numbers of objects are moved in inventory, product manufacturing, and merchandising operations, there is a continuous challenge to accurately monitor the location and flow of objects. Additionally, there is a continuing goal to determine the location of objects in an inexpensive and streamlined manner. One way to track objects is by affixing RFID tags to objects or groups of objects, and interrogating the RFID tags with an interrogator or reader to determine which objects are present in any particular location. RFID tags may be provided with unique identification numbers or codes in order to allow a reader to distinguish between multiple different tags.
Some RFID tags use the electromagnetic field from an interrogator for power. Typically, these devices are passive (have no power supply), which results in a small and portable package.
Another type of RFID tag is an active RFID tag, which includes its own source of power, such as a battery.
If an interrogator or reader has prior knowledge of the identification number of a device, the reader can specify that a response is requested only from the device with that identification number. Sometimes, such information is not available. For example, there are occasions where a reader is attempting to determine which of multiple devices are within communication range. When the reader sends a message to a transponder device requesting a reply, there is a possibility that multiple transponder devices will attempt to respond simultaneously, causing a collision, and thus an erroneous message to be received by the reader. For example, if the interrogator sends out a command requesting that all devices within a communications range identify themselves, and receives a large number of simultaneous replies, the interrogator may not able to interpret any of these replies. Therefore, arbitration or singulation schemes are employed to permit communications that are free of collisions. The term singulation refers to identifying a specific individual tag in a multiple tag environment.
In some arbitration or singulation schemes, described in commonly assigned U.S. Pat. Nos. 5,627,544; 5,583,850; 5,500,650; and 5,365,551, all to Snodgrass et al. and the disclosures of all of which are incorporated herein by reference, a reader sends a command causing each device of a potentially large number of responding devices to select a random number from a known range and use it as that device's arbitration number. By transmitting requests for identification to various subsets of the full range of arbitration numbers, and checking for an error-free response, the interrogator quickly determines the arbitration number of every responder station capable of communicating at the same time. Thereafter, the interrogator is able to conduct subsequent uninterrupted communication with devices, one at a time, by addressing only one device. Various arbitration or singulation schemes are discussed in commonly assigned U.S. Pat. No. 6,275,476 to Wood, Jr.; U.S. Pat. No. 6,118,789 to Wood, Jr.; U.S. Pat. No. 6,072,801 to Wood, Jr. et al.; and U.S. Pat. No. 6,061,344 to Wood, Jr., the disclosures of all of which are incorporated herein by reference.
It is possible to have multiple readers operating in the same location. Problems can arise when multiple readers try to read the same tag at the same time. To speed up the identification process for a large number of tags, each tag has some internal method of removing itself from the inventory, after it has been identified by a reader. If a second reader wants to inventory the same population (or even read a single tag) during a first reader's inventory session, then the possibility exists that the second reader will not read some of the tags. This is because the tags that have been identified by the first reader have discontinued responding to any reader during the inventory as it has been flagged to remove itself from inventory.
Just as two (or more) tags responding to one reader can create an unreadable-information collision at the reader, two (or more) readers broadcasting to one tag can create an unreadable-information collision at the tag, along with possible RF interference.
EPCglobal is a standard setting organization that is developing standards for electronic product codes to support the use of RFID technology. One of their standards, called Class 1, Generation 2 (also known as “Gen 2”) applies to passive RFID systems, and is described on their websites at www.epcglobalus.org or www.epcglobalinc.org. These standards evolve over time, and for a particular standard, such as Gen 2, there are minor variations between versions. The present version of the Class 1, Generation 2 standard is version 1.0.9.
The EPCglobal Class 1, Generation 2 standard has implemented a method called “Sessions” to attempt to solve the problem of two, three or four readers reading the same population of tags in the same time period; i.e., an inventory processes overlap.
According to the specification, a reader shall support and tags shall provide four sessions, and tags shall participate in one and only one session during an inventory round. Two or more interrogators can use sessions to independently inventory a common tag population. Tags associate a separate and independent “inventoried” flag to each of several readers. After singulating a tag, an interrogator may issue a command that causes the tag to invert its inventoried flag for that session.
However, the inventory Sessions concept, as it is described in the EPCglobal Class 1, Generation 2 specification, has at least one important shortcoming. One tag receiving power from two or more readers at the same moment will be prevented from recognizing the command from either reader. Although, in some cases, the multiple readers will each try again, there is no guarantee that they will be successful, since they are both continuing to retry. Further, either reader may decide that there is no tag present, and will therefore miss a tag or tags.
Even though the EPCglobal Class 1, Generation 2 specification states that the inventory process is “time-interleaved,” that is not necessarily the case because of the time independence of each interrogator. One reader's broadcast may step on or interfere with another reader's broadcast, causing indeterminate results. Tags faced with trying to read both readers will not be able to interpret the mingled transmissions, and may not respond at all, without regard to which session the readers want. There is no required time coordination between the two readers in the sessions concept of EPCglobal Class 1, Generation 2.
If two or more readers are performing an inventory, this can and often will lead to indeterminacy in the inventory process, either in reading all the tags if the inventory process is stopped too soon, or in the length of time it takes to get a high probability that all readers have read all the tags within their ranges. Users expect not just a high probability, but a 100% probability that all readers have read all the tags. The EPCglobal inventory process has so many rapid queries that the probability that another reader (in any of the other three sessions) can cause reader interference at a tag is extremely high. The queries are rapid in order to achieve a 1000 tags/second inventory rate stated in the specification. Reader interference includes multiple overlapping reader broadcasts. The interference can be at different tags at different times.
Because the EPCglobal Sessions concept allows for four sessions, the problem is magnified further if three and four readers are broadcasting simultaneously. Also, the persistence times add to the indeterminancy (and therefore, unreliability) of the multiple inventory sessions process.
The reader collision problem is exacerbated by the fact that each tag being inventoried must sometimes establish communications not once, but twice or more with a given reader (and session). More particularly, the EPCglobal specification recites that “ . . . After singulating a Tag an Interrogator may issue a [second] command that causes the Tag to invert its inventoried flag for that session . . . ”. Notice that a tag must first be singulated, which can be problematic.